/*
Copyright (C) 2022-2024 Inspur Corp.

SPDX-License-Identifier: Apache-2.0
*/
package param

type ChainNode struct {
	Name string `json:"name"`
	Host string `json:"host"`
	Port string `json:"port"`
}

type OrgCert struct {
	AdminCert string `json:"adminCert"`
	AdminKey  string `json:"adminKey"`
	CaCert    string `json:"caCert"`
	TlsCaCert string `json:"tlsCaCert"`
}

type ChainUserParam struct {
	BaasUserId string      `json:"baasUserId"`
	LeagueName string      `json:"leagueName"`
	ChainName  string      `json:"chainName"`
	Phone      string      `json:"phone"`
	Mail       string      `json:"mail"`
	OrgName    string      `json:"orgName"`
	Domain     string      `json:"domain"`
	IamId      string      `json:"iamId"`
	Algo       string      `json:"algo"`
	PrvKey     string      `json:"prvKey"`
	Cert       string      `json:"cert"`
	OrgCert    OrgCert     `json:"orgCert"`
	Consensers []ChainNode `json:"consensers"`
	Inodes     []ChainNode `json:"inodes"`
}
